﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Project.Engine.Utilities
{
    public class ConvertUtil
    {
        public static int ToInt32(object obj)
        {
            int retVal = 0;

            try {
                retVal = Convert.ToInt32(obj);
            } catch {
                retVal = 0;
            }

            return retVal;
        }

        public static int ToInt32(object obj, int defaultValue)
        {
            int retVal = defaultValue;

            if (obj == null || obj == DBNull.Value)
                return retVal;

            try
            {
                retVal = Convert.ToInt32(obj);
            }
            catch
            {
                retVal = defaultValue;
            }

            return retVal;
        }

        public static double ToDouble(object obj)
        {
            double retVal = 0;

            try {
                retVal = Convert.ToDouble(obj);
            } catch {
                retVal = 0;
            }

            return retVal;
        }

        public static double ToDouble(object obj, double defaultValue)
        {
            double retVal = 0;

            if (obj == null || obj == DBNull.Value)
                return retVal;

            try
            {
                retVal = Convert.ToDouble(obj);
            }
            catch
            {
                retVal = defaultValue;
            }

            return retVal;
        }

        public static string ToString(object obj)
        {
            string retVal = String.Empty;

            try {
                retVal = Convert.ToString(obj);
            } catch {
                retVal = String.Empty;
            }

            return retVal;
        }

        public static string ToString(object obj, string defaultValue)
        {
            string retVal = String.Empty;

            if (obj == null || obj == DBNull.Value)
                return retVal;

            try
            {
                retVal = Convert.ToString(obj);
            }
            catch
            {
                retVal = defaultValue;
            }

            return retVal;
        }

        public static string GetCategoryName(string _name) {
            if (_name.Contains("nguyen-lieu-lam-banh") == true) {
                return "Nguyên liệu làm bánh";
            } else if (_name.Contains("nguyen-lieu-trang-tri") == true) {
                return "Nguyên liệu trang trí";
            } else if (_name.Contains("dung-cu-lam-banh") == true) {
                return "Dụng cụ làm bánh";
            } else if (_name.Contains("khuon") == true) {
                return "Khuôn";
            } else if (_name.Contains("do-gia-dung") == true) {
                return "Đồ gia dụng";
            } else if (_name.Contains("sach") == true) {
                return "Sách";
            } else if (_name.Contains("cong-thuc") == true) {
                return "Công thức";
            } else if (_name.Contains("lop-hoc") == true) {
                return "Lớp học";
            } else {
                return String.Empty;
            }
        }

        public static string GetCateNameUrlByCateId(int cateId)
        {
            if (cateId == DefineUtil.nguyenLieuLamBanhId)
            {
                return "nguyen-lieu-lam-banh";
            }
            else if (cateId == DefineUtil.nguyenLieuTrangTriId)
            {
                return "nguyen-lieu-trang-tri";
            }
            else if (cateId == DefineUtil.dungCuLamBanhId)
            {
                return "dung-cu-lam-banh";
            }
            else if (cateId == DefineUtil.khuonId)
            {
                return "khuon";
            }
            else if (cateId == DefineUtil.doGiaDungId)
            {
                return "do-gia-dung";
            }
            else if (cateId == DefineUtil.sachId)
            {
                return "sach";
            }
            else if (cateId == DefineUtil.congThucId)
            {
                return "cong-thuc";
            }
            else if (cateId == DefineUtil.lopHocId)
            {
                return "lop-hoc";
            }
            else
            {
                return String.Empty;
            }
        }

        public static int GetCateIdByCateName(string _name) {
            if (_name == "nguyen-lieu-lam-banh" || _name == "Nguyên liệu làm bánh")
            {
                return 1;
            }
            else if (_name == "nguyen-lieu-trang-tri" || _name == "Nguyên liệu trang trí")
            {
                return 2;
            }
            else if (_name == "dung-cu-lam-banh" || _name == "Dụng cụ làm bánh")
            {
                return 3;
            }
            else if (_name == "khuon" || _name == "Khuôn")
            {
                return 4;
            }
            else if (_name == "do-gia-dung" || _name == "Đồ gia dụng")
            {
                return 5;
            }
            else if (_name == "sach" || _name == "Sách")
            {
                return 6;
            }
            else if (_name == "cong-thuc" || _name == "Công thức")
            {
                return 7;
            }
            else if (_name == "lop-hoc" || _name == "Lớp học")
            {
                return 8;
            }
            else
            {
                return 0;
            }
        }

        public static string GetCateNameByCateId(int cateId) {
            if (cateId == DefineUtil.nguyenLieuLamBanhId)
            {
                return "Nguyên liệu làm bánh";
            }
            else if (cateId == DefineUtil.nguyenLieuTrangTriId)
            {
                return "Nguyên liệu trang trí";
            }
            else if (cateId == DefineUtil.dungCuLamBanhId)
            {
                return "Dụng cụ làm bánh";
            }
            else if (cateId == DefineUtil.khuonId)
            {
                return "Khuôn";
            }
            else if (cateId == DefineUtil.doGiaDungId)
            {
                return "Đồ gia dụng";
            }
            else if (cateId == DefineUtil.sachId)
            {
                return "Sách";
            }
            else if (cateId == DefineUtil.congThucId)
            {
                return "Công thức";
            }
            else if (cateId == DefineUtil.lopHocId)
            {
                return "Lớp học";
            }
            else
            {
                return String.Empty;
            }
        }
    }
}
